﻿<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="FormularioUsuario.aspx.cs" Inherits="Seguridad_Usuarios_FormularioUsuario" %>

<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">

    <div class="ui-widget-content ui-corner-all" id="marcoForm">
        <h3 id="titulo" class="ui-widget-header ui-corner-all">Administracion de Seguridad: Usuarios</h3>
        <div id="content">
            <div id="desc_form">
                Formulario para crear o modificar los datos de los Usuarios del Sistema
            </div>
            <iudicium:Notify ID="ControlNotificacion" runat="server" />
            <div id="camposForm" class="validationGroup">
                <div class="field">
                    <div class="label">
                        <asp:Label ID="PersonaLabel" runat="server" Text="Persona"
                            AssociatedControlID="PersonaSeleccionada"></asp:Label>
                        <asp:Label ID="PersonaErrorLabel" runat="server"
                            CssClass="mensajes"></asp:Label>
                    </div>
                    <iudicium:SelectPeople ID="PersonaSeleccionada" runat="server"
                        SelectCommandLabel="Seleccionar Persona"
                        SelectionMode="Simple"
                        ObjectType="Usuario" />
                </div>
                <div class="field">
                    <div class="label">
                        <asp:Label ID="NombreUsuarioLabel" runat="server"
                            Text="Nombre de Usuario"
                            AssociatedControlID="NombreUsuarioTextBox"></asp:Label>
                        <asp:Label ID="NombreUsuarioErrorLabel" runat="server" 
                            CssClass="mensajes">
                        </asp:Label>
                    </div>
                    <asp:TextBox ID="NombreUsuarioTextBox" runat="server"
                        CssClass="smallField">
                    </asp:TextBox>
                </div>
                <div class="field">
                    <div class="label">
                        <asp:Label ID="RolLabel" runat="server"
                            Text="Rol"
                            AssociatedControlID="RolesDropDownList">
                        </asp:Label>
                        <asp:Label ID="RolErrorLabel" runat="server" 
                            CssClass="mensajes">
                        </asp:Label>
                    </div>
                    <asp:DropDownList ID="RolesDropDownList" runat="server"
                        DataSourceID="RolesObjectDataSource"
                        DataValueField="RolId"
                        DataTextField="NombreRol"
                        OnDataBound="RolesDropDownList_DataBound">
                    </asp:DropDownList>
                    <asp:ObjectDataSource ID="RolesObjectDataSource" runat="server"
                        TypeName="Iudicium.Seguridad.CRN.RolCRN"
                        SelectMethod="GetRolesBySearch">
                        <SelectParameters>
                            <asp:Parameter Name="parametro" DefaultValue="" Type="String" />
                        </SelectParameters>
                    </asp:ObjectDataSource>
                </div>
                <div class="field">
                    <div class="label">
                        <asp:Label ID="EstadoLabel" runat="server" Text="Estado"></asp:Label>
                    </div>
                    <asp:RadioButton ID="ActivoRadioButton" runat="server"
                        GroupName="Estado"
                        Text="Activo" />
                    <asp:RadioButton ID="InactivoRadioButton" runat="server"
                        Checked="true"
                        GroupName="Estado"
                        Text="Inactivo" />
                </div>
                <asp:Panel ID="CambiarPasswordPanel" runat="server"
                    CssClass="field"
                    Visible="false">
                    <asp:LinkButton ID="CambiarPasswordLinkButton" runat="server"
                        OnClick="CambiarPasswordLinkButton_Click"
                        Text="CambiarContraseña">
                    </asp:LinkButton>
                </asp:Panel>
                <asp:Panel ID="PasswordPanel" runat="server">
                    <div class="field">
                        <div class="label">
                            <asp:Label ID="PasswordLabel" runat="server"
                                Text="Contraseña"
                                AssociatedControlID="PasswordTextBox"></asp:Label>
                            <asp:Label ID="PasswordErrorLabel" runat="server" 
                                CssClass="mensajes">
                            </asp:Label>
                        </div>
                        <asp:TextBox ID="PasswordTextBox" runat="server"
                            CssClass="smallField"
                            TextMode="Password">
                        </asp:TextBox>
                    </div>
                    <div class="field">
                        <div class="label">
                            <asp:Label ID="ConfirmPasswordLabel" runat="server"
                                Text="Confirmar Contraseña"
                                AssociatedControlID="ConfirmPasswordTextBox">
                            </asp:Label>
                            <asp:Label ID="ConfirmPasswordErrorLabel" runat="server" 
                                CssClass="mensajes">
                            </asp:Label>
                        </div>
                        <asp:TextBox ID="ConfirmPasswordTextBox" runat="server"
                            CssClass="smallField"
                            TextMode="Password">
                        </asp:TextBox>
                    </div>
                </asp:Panel>                
                
                <div id="botonesForm">
                    <asp:LinkButton ID="GuardarLinkButton" runat="server"
                        Text="Guardar"
                        CssClass="button causesValidation"
                        OnClick="GuardarLinkButton_Click">
                    </asp:LinkButton>
                    <asp:HyperLink ID="CancelarHyperlink" runat="server"
                        NavigateUrl="~/Seguridad/Usuarios/ListaUsuarios.aspx"
                        CssClass="cancelOption"
                        Text="Cancelar">
                    </asp:HyperLink>
                </div>
            </div>
        </div>
    </div>
    <asp:HiddenField ID="UsuarioIdHiddenField" runat="server" Value="0" />
    
    
    <script type="text/javascript">
        $(document).ready(function() {
            
            $("#aspnetForm").validate({
                onsubmit: false,
                errorPlacement: function(error, element) {
                    error.appendTo(element.prev("div.label").children("span.mensajes")); //pone el mensaje de error en el label del field
                },
                rules: {
                    <%= PersonaSeleccionada.UniqueID %>: {
                        required: true
                    },
                    <%= NombreUsuarioTextBox.UniqueID %>: {
                        required: true
                    },
                    <%= RolesDropDownList.UniqueID %>: {
                        required: true
                    },
                    <%= PasswordTextBox.UniqueID %>: {
                        required: true,
                        minlength: 8
                    },
                    <%= ConfirmPasswordTextBox.UniqueID %>: {
                        required: true,
                        equalTo: "input[name='<%=PasswordTextBox.UniqueID%>']"
                    }
                },
                messages: {
                    <%= PersonaSeleccionada.UniqueID %>: {
                        required: " Seleccione la Persona a quien le va asignar el Usuario"
                    },
                    <%= NombreUsuarioTextBox.UniqueID %>: {
                        required: " Ingrese el nombre de usuario"
                    },
                    <%= RolesDropDownList.UniqueID %>: {
                        required: " Seleccione el Rol"
                    },
                    <%= PasswordTextBox.UniqueID %>: {
                        required: " Ingrese la Contraseña",
                        minlength: " La contraseña debe contener al menos 8 caracteres"
                    },
                    <%= ConfirmPasswordTextBox.UniqueID %>: {
                        required: " Confirme la contraseña ingresada",
                        equalTo: " Las contraseñas ingresadas deben ser iguales"
                    }
                }
            });

        });
        
    </script>

</asp:Content>

